using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public static class Constants
{
    public const string StartScene = "Start";
    public const string MainScene = "Main";
    public const string PathEquipBtn = "Prefab/UIPrefab/EquipButton";
    public const string PathTipPanel = "Prefab/UIPrefab/TipPanel";
    public const string PathFreeUsePanel = "Prefab/UIPrefab/FreeUsePanel";
    public const string PathPrivacyPanel = "Prefab/UIPrefab/PrivacyPanel";
    public const string PathMissionBtn = "Prefab/UIPrefab/MissionButton";
    public const string PathReward = "Prefab/UIPrefab/Reward";
    public const string PathGunPrefab = "Prefab/GunPrefab/WaterGun_";
    public const string PathSmokeParticlePrefab = "Prefab/ParticlePrefab/SpraySmoke";
    public const string PathSmokeParticlePrefab_2 = "Prefab/ParticlePrefab/SpraySmoke_2";
    public const string PathAudio_A = "Audios/Audio_A";
    public const string PathAudio_B = "Audios/Audio_B";
    public const string PathAudio_C = "Audios/Audio_C";
    public const string PathAudio_D = "Audios/Audio_D";
    public const string PathAudio_BtnClick = "Audios/ButtonClick";
    public const string PathAudio_BtnClick_1 = "Audios/ButtonClick_1";
    public const string PathAudio_Nozzle = "Audios/Nozzle";
    public const string PathAudio_MainBgm = "Audios/MainBgm";
    public const string PathAudio_Footsteps = "Audios/Footsteps";
    public const string PathAudio_Win = "Audios/Win";

    public const int PlayerMoveSpeed = 3;

    /// <summary>摇杆的距离</summary>
    public const int ScreenOPDistance = 90;

    public const string KEY_AGREEPRIVACY = "KEY_AGREEPRIVACY";


    #region 水枪相关

    public const string PathWaterGunSprite = "Sprites/WaterGun/WaterGun";
    public const string PathAvatarSprite = "Sprites/Avatar";
    public const string PathNozzlePrefab = "Prefab/UIPrefab/NozzleBtn";
    public const string PathNozzle = "Sprites/WaterGun/Nozzle";

    #endregion

    #region 任务相关

    public static List<string> PathMissions = new List<string>()
    {
        "Prefab/CleanPrefab/0_Rubbish",
        "Prefab/CleanPrefab/1_Car",
        "Prefab/CleanPrefab/2_PPT",
        "Prefab/CleanPrefab/5_BLW",
        "Prefab/CleanPrefab/3_PDX",
        "Prefab/CleanPrefab/4_XBW",
        "Prefab/CleanPrefab/6_HZB",
        "Prefab/CleanPrefab/7_ZYG",
    };

    public static List<List<string>> Dialog = new List<List<string>>()
    {
        new List<string>() { "你好。", "我家下面的垃圾箱实在是有点脏了，可以请你帮我清洗一下吗？", "最好是在我不在的时候再清洗。" },
        new List<string>() { "你好，小兄弟。", "我的船脏到不能开了，希望你有时间过来帮我洗一下。", "你放心我不会让你白干的。", "我会付给你一块钱！" },
        new List<string>() { "我准备好了，我准备好了，我准备好了！", "工作实在是太忙了，我都没空清洗我的泡泡摊了。", "阿金说你专业清洗特别干净，希望你能帮我清洗一下。", "谢谢！" },
        new List<string>() { "嗨，又是我！", "说实话我的屋子有点脏。", "上次我的泡泡摊真的太干净了，希望你能再帮我一下！", "非常感谢！" },
        new List<string>() { "......", "我觉得我的屋子很干净不需要清洗。", "但是，如果你闲的没事干的话可以帮我洗一下。", "我要去抓水母了，再见。" },
        new List<string>() { "你好，小兄弟。", "我的店需要清洗！", "最近都没什么顾客来了。", "我会大方的付给你一块钱！" },
        new List<string>() { "哈哈哈哈哈。", "我的老对头的店就是你洗的？我可不能落后。", "请你也帮我洗一下，我给你5000块钱！" },
        new List<string>() { "你好,请你再帮我洗一下屋子。", "作为回报我会在你干活的时候吹笛子帮你加油。", "什么？你说你不需要？", "那算了，不是所有人都能欣赏艺术的..." },
    };

    public static Character[] Characters = new[]
        { Character.ZYG, Character.XLB, Character.HMBB, Character.HMBB, Character.PDX, Character.XLB, Character.PLB, Character.ZYG };

    public static List<Vector3> PlayerMissionPos = new List<Vector3>()
    {
        new Vector3(-8f, 1.2f, 18f), //垃圾箱
        new Vector3(3f, 1.2f, 18f), //船
        new Vector3(-8f, 1.2f, 18f), //泡泡摊
        new Vector3(17f, 1.2f, 18f), //菠萝屋
        new Vector3(-15.5f, 1.2f, 18f), //派大星
        new Vector3(13.5f, 1.2f, 18f), //蟹堡王
        new Vector3(-31f, 1.2f, 18f), //海之霸
        new Vector3(0f, 1.2f, 18f), //章鱼屋
    };

    public const string PathMissonRewardIcon = "Sprites/EmptyStar";
    public const string PathMissonQualityIcon = "Sprites/StarIcon";
    public const string PathMissonAccuracyIcon = "Sprites/EmptyStar";
    public const string PathMissonTimeIcon = "Sprites/StarIcon";
    public const string PathMissonSprite = "Sprites/Mission/";

    private const int MissionCount = 8;

    public static int[] MissonRate = new int[MissionCount]
    {
        30, 25, 40, 25, 60, 55, 65, 55
    };

    public static int[] MissonRewrd = new int[MissionCount]
    {
        1000, 2000, 2000, 3000, 3000, 3000, 5000, 5000
    };

    public static int[] MissonTimeReward = new int[MissionCount]
    {
        200, 450, 450, 450, 600, 600, 800, 800
    };

    public static int[] MissonNeedTime = new int[MissionCount]
    {
        90, 90, 90, 120, 120, 120, 120, 120
    };

    #endregion
}

public enum PanelState
{
    MainMenu,
    Store,
    LevelSelections,
    Mission,
    Win,
    Pause
}

public enum PrefsType
{
    Coin_0,
    EquipData,
    Mission
}